javascript的几种数据类型

••javascript 有种5基本数据类型••
≥分别是:
≥number(数字类型)
≥string(字符串类型)
≥underfined(空类型)
≥null(空类型)
≥boolen(布尔值)



≥ 1.number整数 可以通过10进制 8进制 16进制表示

≥ 浮点数 该数值必须包含一个小数点,小数点后面必须有一位数字,如果小数点后只有0,自动转换成整数

≥ 浮点数占据的空间内存是内存的两倍,极大极小的数字会用e科学表示法。

≥ NaN

≥ 1、即非数值,是一个特殊的值,这个数值用于表示一个本来要返回数值的操作数,未返回数值的情况。比如任何数值除≥以0,本是不符合规范的,js里,这样的操作返回NaN(但是实际上,只有0除以0时返回NaN,其他则无穷值)。
≥ 2、NaN有两个不同寻常的特点:任何涉及NaN的操作都会返回NaN,NaN值与任何值都不相等,包括本身。
≥ 3、isNaN()函数,这个函数可以判断,传递的参数是否“不是数值”这里涉及数值转换的问题,例如“10”这个字符串就≥可以转换为10,但是“blue”这个字符串则无法转换为数字,所以isNaN(“blue”)==true

≥ Number() 可以 任何类型




≥ 2.string
≥ JavaScript 中 slice 、substr 和 substring的区别:
≥ 1: String.slice(start,end): 一个新的字符串。包括字符串 stringObject 从 start 开始(包括 ≥start)到 end 结束(不包括 end)为止的所有字符.
≥ 2: String.substring(start,end) 这个就有点特别了,它是先从start,end里找出一个较小的值. ≥然后从字符串的开始位置算起,截取较小值位置和较大值位置之间的
≥ 字符串,截取出来的字符串的长度为较大值与较小值之间的差。
≥ 一个新的字符串,该字符串值包含 stringObject 的一个子字符串,其内容是从 start 处到 stop-1 ≥处的所有字符,其长度为 stop 减 start。
≥ 3: String.substr(start,end) 这个就是我们常用的从指定的位置(start)截取指定长度(end)的字符串.
≥ 一个新的字符串,包含从 stringObject 的 start(包括 start 所指的字符) 处开始的 lenght ≥个字符。如果没有指定 lenght,那么返回的字符串包含从 start
≥ 到 stringObject 的结尾的字符。

≥ String 对象的方法 slice()、substring() 和 substr() (不建议使用)≥都可返回字符串的指定部分。slice() 比 substring() 要灵活一些,因为它允许使用负数作为参数。slice() ≥与 substr() 有所不同,因为它用两个字符的位置来指定子串,而 substr() 则用字符位置和长度来指定子串。




≥ 3.underfined和null
≥ JavaScript 中有两个特殊数据类型:undefined 和 null,下节介绍了 null 的判断,下面谈谈 undefined ≥的判断。

≥ 以下是不正确的用法:

≥ var exp = undefined;
≥ if (exp == undefined)
≥ {
≥ alert(“undefined”);
≥ }


≥ exp 为 null 时,也会得到与 undefined 相同的结果,虽然 null 和 undefined 不一样。注意:要同时判断 ≥undefined 和 null 时可使用本法。



≥ var exp = undefined;
≥ if (typeof(exp) == undefined)
≥ {
≥ alert(“undefined”);
≥ }


≥ typeof ≥返回的是字符串,有六种可能:”number”、”string”、”boolean”、”object”、”function”、”undefined”



≥ 以下是正确的用法:



≥ var exp = undefined;
≥ if (typeof(exp) == “undefined”)
≥ {
≥ alert(“undefined”);
≥ }
≥ JS 中如何判断 null


≥ 以下是不正确的用法:



≥ var exp = null;
≥ if (exp == null)
≥ {
≥ alert(“is null”);
≥ }


≥ exp 为 undefined 时,也会得到与 null 相同的结果,虽然 null 和 undefined 不一样。注意:要同时判断 ≥null 和 undefined 时可使用本法。



≥ var exp = null;
≥ if (!exp)
≥ {
≥ alert(“is null”);
≥ }


≥ 如果 exp 为 undefined 或者数字零,也会得到与 null 相同的结果,虽然 null ≥和二者不一样。注意:要同时判断 null、undefined 和数字零时可使用本法。



≥ var exp = null;
≥ if (typeof(exp) == “null”)
≥ {
≥ alert(“is null”);
≥ }


≥ 为了向下兼容,exp 为 null 时,typeof 总返回 object。

≥ var exp = null;
≥ if (isNull(exp))
≥ {
≥ alert(“is null”);
≥ }


≥ JavaScript 中没有 isNull 这个函数。


≥ 以下是正确的用法:



≥ var exp = null;
≥ if (!exp && typeof(exp)!=”undefined” && exp!=0)
≥ {
≥ alert(“is null”);
≥ } 




≥ 4.boolean
≥ js中的boolean原始类型和Boolean引用类型
≥ js 代码
≥ 1. var bFound = true;
≥ 2. var bFlag = false;
≥ 如上面的两行代码,boolean类型是JavaScript中的一种原始类型,它只有两种值:true和false。 ≥使用Boolean(value)方法可以强制转换任意值为boolean类型 js 代码
≥ 1. alert(Boolean(‘’));
≥ 2. alert(Boolean(‘hello’));
≥ 3. alert(Boolean(100));
≥ 4. alert(Boolean(0));
≥ 5. alert(Boolean(NaN));
≥ 6. alert(Boolean(null));
≥ 7. alert(Boolean(undefined));
≥ 8. alert(Boolean(new Object()));
≥ //output true 可以看出,当被转换的值为空字符串、数字0和NaN、null或者undefined时,转换为false≥,其它情况转换为true。所以当我们写if判断的时候需要注意这些特殊的情况,尤其是使用目前比较流行的“对象探测≥法”书写JS时。 “对象探测法”主要写法如下: js 代码
≥ 1. var student = new Object();
≥ 2. if (student.name) {
≥ 3. alert(student.name);
≥ 4. } else {
≥ 5. student.name = ‘Tom’;
≥ 6. alert(student.name);
≥ 7. }

Share

css回顾

常见的属性
css注释方式 /**/
css引入方式
内联似:优点:优先级高,不会被其他样式覆盖影响。缺点:不利于维护,没有样式的内容分离
内部引用:不利于复用,适于单一页面
外部:利于复用,内容分离。缺点:增加一次请求

1.margin边距属性
margin-top(设置顶边距)
margin-right(设置右边距)
margin-bottom(设置底边距)
margin-left(设置左边距)

2.padding填充距属性:
padding-top设置顶端真充距)
padding-right设置顶端真充距)
padding-bottom设置顶端真充距)
padding-left设置顶端真充距)
3.border(边框)
border-top-width(顶端边框宽度)
border-right-width(右端边框宽度)
border-bottom-width(底端边框宽度)
border-left-width(d左边框宽度)
border-width(一次定义边框宽度)
border-color(设置边框颜色)
border-style(设置边框样式)
border-top(一次定义顶端各种属性)
border-right(一次定义右端各种属性)
border-bottom(一次定义底端各种属性)
border-left(一次定义左端各种属性)
width(定义宽度属性)
height(定义高度属性)
float(文字环绕在一个元素的四周)
clear(定义某一边是否有环绕)
solid /实线框/
dotted /虚线框/
double /双线框/
groove /立体内凸框/
ridge /立体浮雕框/
inset /凹框/
outset /凸框/
4.定位(position) 即层属性
Type:设定对象的定位方式。
有三种方式:Absolute(绝对定位)、Relative(相对定位)、Static(无特殊定位)。相对应的CSS属性是”position”。
Overflow:设置如果层的内容超出了层的大小时如何处理。有四种处理方式:visible,增加层的大小,从而将层的所有内容显示出来;hidden,保持层的大小不变,将超出层的内容剪裁掉;Scroll,总是显示滚动;Auto,只有在内容超出层的边界时才显示滚动条。相对应的CSS属性是”overflow”。 Placement:设置对象定位层的位置和大小。可以分别设置left(左边定位)、top(顶部定位)、width(宽)、height(高)。相对应的CSS属性分别是”left; top; width; height”。Clip:定义定位层的可视区域。区域外的部分为不可视区,为透明的。可以理解为在定位层上放一个矩形遮罩的效果。相对应的CSS属性是”clip”。
5.font(字体)
font-family(使用什么字体)
font-style(字体的样式,是否斜体):normal/italic/oblique
font-variant(字体大小写):normal/small-caps
font-weight(字体的粗细):normal/bold/bolder/lithter
font-size(字体的大小):absolute-size/relative-size/length/percentage
6定义超链接:
a:link {color:green;text-decoration:nore}(未访问过的状态)
a:visited {color:ren;text-decoration:underline;16pt}(访问过的状态)
a:hover {color:blue;text-decoration:underline;16pt}(鼠标激活的状态)
a:active
z-index
Z-Index:设置对象的层叠顺序。编号较大的层会显示在编号较小的层上边。变量值可以是正值也可以是负值。相对应的CSS属性是”z-index”。

##overflow
Overflow:设置如果层的内容超出了层的大小时如何处理。有四种处理方式:visible,增加层的大小,从而将层的所有内容显示出来;hidden,保持层的大小不变,将超出层的内容剪裁掉;Scroll,总是显示滚动;Auto,只有在内容超出层的边界时才显示滚动条。相对应的CSS属性是”overflow”。 Placement:设置对象定位层的位置和大小。可以分别设置left(左边定位)、top(顶部定位)、width(宽)、height(高)。相对应的CSS属性分别是”left; top; width; height”。Clip:定义定位层的可视区域。区域外的部分为不可视区,为透明的。可以理解为在定位层上放一个矩形遮罩的效果。相对应的CSS属性是”clip”。

鼠标光标样式:
链接手指 CURSOR: hand
十字体 cursor:crosshair
箭头朝下 cursor:s-resize
十字箭头 cursor:move
箭头朝右 cursor:move
加一问号 cursor:help
箭头朝左 cursor:w-resize
箭头朝上 cursor:n-resize
箭头朝右上 cursor:ne-resize
箭头朝左上 cursor:nw-resize
文字I型 cursor:text
箭头斜右下 cursor:se-resize
箭头斜左下 cursor:sw-resize
漏斗 cursor:wait

Share

html知识点

>

  • html基本格式
    <html>
        <head>
            <meta charset="utf-8"/>
            <title></title>
            <link rel="stylesheet" type="text/css" href="css"/>
        </head>
        <body>
        </body>
    </html>    
    
  • 标签
  • h1~h6标签 特点字体加粗 从h1开始字体越来越小 用于标题 有默认的margin

  • p标签 特点用于段落一般与h标签一起的 有默认的margin

  • div span标签 没有任何语义 一个是块级标签 一个行级标签 布局实用的最多的

  • strong标签 特点 字体加粗 特别强调

  • em标签 特点 强调 斜体

  • a标签 特点 超链接 有href属性(必须的) title属性 target如果在一个 a 标签内包含一个 target 属性,浏览器将会载入和显示用这个标签的 href 属性命名的、名称与这个目标吻合的框架或者窗口中的文档。如果这个指定名称或 id 的框架或者窗口不存在,浏览器将打开一个新的窗口,给这个窗口一个指定的标记,然后将新的文档载入那个窗口。从此以后,超链接文档就可以指向这个新的窗口。

  • del标签 定义删除字

  • small 小字体

  • br 换行标签 单标签

  • br:
    <body>
        <div>中华</br>人命共和国</div>
    </body>
    
  • hr 分割线标签 单标签
  • hr:
    <body>
        <div>中华</hr>人命共和国</div>
    </body>
    
  • video 标签定义视频,比如电影片段或其他视频流。

  • base 标签可以改变这一点。浏览器随后将不再使用当前文档的 URL,而使用指定的基本 URL 来解析所有的相对 URL。这其中包括 a、img、link、form 标签中的 URL。必须位于 head 元素内部。

  • base标签写法:

    <head>
        <base href="http://www.w3school.com.cn/i/" />
        <base target="_blank" />
    </head>
    
    <body>
        <img src="eg_smile.gif" />
        <a href="http://www.w3school.com.cn">W3School</a>
    </body>
    
  • b标签这是粗体文本

  • address 标签定义文档或文章的作者/拥有者的联系信息。
    如果 address 元素位于 body 元素内,则它表示文档联系信息。
    如果 address 元素位于 article 元素内,则它表示文章的联系信息。
    address 元素中的文本通常呈现为斜体。大多数浏览器会在 address 元素前后添加折行。

  • big标签呈现大号字体效果。

  • q 标签定义短的引用。

  • q标签:
    <body>
        <div>中华<q>人命共和</q></div>
    </body>
    
  • blockquote 标签定义长的引用。
  • blockquote 用法和q一样
  • style 标签用于为 HTML 文档定义样式信息。

  • 列表

  • 无序列表 ul li ul有默认margin和padding
  • 无序列表格式

    <ul>
        <li></li>
        <li></li>
    </ul>
    
  • 有序列表 ol li ol有默认margin和padding

  • 有序列表格式
    <ol>
        <li></li>
        <li></li>
    </ol>
    
  • 自定义列表 dl dt dd

  • 自定义格式:

    <dl>
        <dt></dt>
        <dd></dd>    
        <dt></dt>
        <dd></dd>    
    </dl>
    
  • 表格
  • table tbody这个标签基本上不怎么用了

  • tr 表格的一行

  • th 表格的头部的一个单元格,表格表头

  • td 表格的一个单元格

  • caption 表格标题

  • summary属性 表格的摘要

  • 基本格式

    <table>
        <tr>
            <td></td>
        </tr>
    </table>
    

    内可以加多个.

Share

打地鼠

    ><!DOCTYPE html>//打地鼠的Html
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>Document</title>
        <link rel="stylesheet" type="text/css" href="index.css"/>
    </head>
    <body>
        <div class="beijing">
            <div class="defen">0</div>
            <div class="tiao"></div>
            <div class="ting">暂停</div>
            <div class="kai">继续</div>
            <div class="chonglai">重新开始</div>
            <div class="open"><a href="#">开始</a></div>
            <div class="zailai"><a href="#"></a></div>
            <img src="img/h0.png" alt="huitai"/>
        </div>
        <script type="text/javascript" src= "wode.js"></script>
        <!-- <script type="text/javascript" src= "index.js"></script> -->
    </body>
    </html>
    //打地鼠的js
    var defen = document.querySelector('.defen');
    var tiao = document.querySelector('.tiao');
    var open = document.querySelector('.open a');
    var yi = document.querySelector('.open');
    var zailai = document.querySelector('.zailai');
    var img = document.querySelector('img');
    var ting = document.querySelector('.ting');
    var kai = document.querySelector('.kai');
    var chonglai = document.querySelector('.chonglai');
    var width = tiao.offsetWidth;
    (function(){
        open.onclick = function(){//点击开始
            open.style.display = "none";
            function hello(){
            test = setInterval(function(){
                width = width - 0.18;
                if(width <=0){
                    width = 0;
                    clearInterval(test);
                    open.style.display = "block";
                    yi.style.left = "68px";
                    zailai.innerHTML = '<a href="index.html">再来一局</a>';
                    zailai.style.left = "90px";
                    open.innerHTML = 'gime over';
                    clearInterval(test1);
                }
                tiao.style.width = width +'px';
            },30)
        }
        hello();
            var pos = [{t:157,l:11},//灰太狼位置
                {t:217,l:11},
                {t:291,l:19},
                {t:292,l:200},
                {t:209,l:190},
                {t:139,l:181},
                {t:112,l:90},
                {t:188,l:97},
                {t:270,l:110}];
        function kaishi(){
            test1 = setInterval(function(){
                var log = random(0,8);//随机出现位置
                name = random(0,100)< 80 ? "h":"x";//灰太狼小灰灰出现的几率
                img.style.left = pos[log].l+'px';
                img.style.top = pos[log].t+'px';
                img.style.display = 'block';
                img.index = 0;
                test2 = setInterval(function(){//灰太狼出现
                    img.index++;
                    if(img.index>=5){
                        img.index = 5;
                        clearInterval(test2)
                    }
                    img.src = 'img/'+name+img.index +'.png';
                },30)
                test3 = setTimeout(function(){//灰太狼下去
                    test4 = setInterval(function(){
                        img.index--;
                        if(img.index <=0){
                            img.index = 0;
                            img.style.display = "none";
                            clearInterval(test4);
                        }
                            img.src = 'img/'+name + img.index +'.png';
                    },30)
                },700)
            },1000)
        }
        kaishi();
            var num = 0;
            var first =true;                
        if(name =="h"){//加分
            img.src = 'img/h6'+'.png';
            num +=10;
        }
        if(name =="x"){//减分
            img.src = 'img/x6'+'.png';
            num -=10;
        }
        if(num <=0){//没有分的时候
            num = 0;
        }
        defen.innerHTML = num +'分';
    }
    ting.onclick = function(){//暂停
        clearInterval(test);
        clearInterval(test1);
        ting.style.display = 'none';
        kai.style.display = 'block';
        img.src = 'img/'+name+img.index +'.png';
        // chonglai.style.display = 'block';
    }
    kai.onclick = function(){//继续
        ting.style.display = 'block';
        kai.style.display = 'none';
        hello();
        kaishi();
    }
}
})();
function random(x,y){
    return Math.round(Math.random()*(y-x)+x);
}

希望大家帮忙改一下

Share
Share

js声明函数和函数表达式

说函数之前先讲一下浏览器解析js前先做的事
1.把变量,函数表达式的声明提到当前作用域的顶端
2把函数赋值
声明函数:是使用function关键字加函数名声明的函数
function fn(){
console.log(123);
}
函数表达式:就是使用function关键字,没有函数名赋值给一个变量的函数,就是使用function关键字但是没有函数名的函数。
var b = function(){
console.log(456);
}
()表示执行
声明函数和函数表达式的区别:
函数表达式可以使用()操作符立即执行,函数声明不可以。
(function fn(){
console.log(123);
})();
()();第一个()把匿名函数定义成函数表达式,第二个()表示执行,如上。
给大家讲一下作用域的问题:
全局变量可以在任何地方访问。
函数内部的变量,对外部是不可见的。
函数内部可以访问外部的变量。

在函数里,每个函数都有一个默认返回值undefined

Share

js从零开始

js的引入方法有3种,和css一样,推荐用外部引入的方法:src是一个请求,穿插到HTML里面。
var 变量,作用:声明变量,保存数据和性息用的
onclick:点击,也就是点击过后的样式
onmuseover:鼠标在上面时的样式
onmuseout:鼠标移除后的样式
arr:数组
alert:在浏览器里弹出,缺点明显,不易调试
console.log():和alert一样是调试用的,在审查元素里能找到
string字符串
number数字类型
boolear布尔值
null空类型
underfined空类型
object对象类型
=是赋值==比较,是否相等
NaN非数字
运算符:++加 –减 *乘 %取模
关系运算符:< > <= !==不全等
相等运算符:==相等 !=不想等 ===全等;
for循环的基本格式
for (var i = 0; i < Things.length; i++) {
Things[i]
};
if的基本格式if(i>0){
i=xx;
};
HTML引入css和js的基本格式

<!doctype html>
<html>
<head>                                            
    <meta charset="utf-8"/>                        
    <title></title>                                
        <link rel="stylesheet" type="text/css" href="css/    reset.css"/>    
        <link rel="stylesheet" type="text/css" href="css/    index.css"/>外部引入css      
</head>
    <body>
        <div style="">引入css行间样式
        </div>
        <script type="text/javascript" src="js/    index.js"></script>外部引入js
    </body>
</html>
Share

css的标签和属性

我是一个初学者,希望大神点拨点拨

学了一个多月了,想看看自己还记得学到了那些东西。
1.行标签:a img span em big small del strong
2.块标签:p div body hi~h6 ol li dl
属性 display:none block inline inline-block
属性 background:url() color repeat x y
属性 border:solid dotted dashed color width -radius上下左右
属性 margin-padding:trbl法则
属性 width-height
属性 text-align:cencer lift right
属性 line-height:top bottom center
属性 over-flow:hidden scrolli
属性 float:left right
属性 font:size famaily
属性 input:possword radio text reuset
a标签的属性 :hover link active visited
图片连接(img src=”#“ alt=”” titie=””>
css的引入方式外部引入link type href内部引入行间样式style

以上就是我学了这么久在css上学到的,也能这HTML里面实现的,可能有错误,希望大家更改一下

Share